1. Field of the Invention
The present invention is concerned with control theory, dynamical control systems, controllers, hybrid control systems, routers, computer and communication routing architectures, multi-agent systems, complex computer operating systems, intelligent systems and distributed computer systems. In addition, the present invention deals with artificial intelligence techniques, including evolutionary computation and machine learning, probabilistic simulations, and artificial neural networks, as well as with the combinatorial optimization of hybrid mathematical and computational techniques. The present invention is applicable to computational, engineering, mechanical and aeronautical systems, including complex distributed systems.
2. Description of Prior Art
Complex computer systems increasingly require the integration of combinations of problem-solving techniques for the real time adaptation to environmental change. In the case of groups of cooperating software agents in a multi-agent system, artificial intelligence (AI) is required to solve problems posed by a changing environment. On the other hand, systems comprised of computer hardware networks can also adapt to environmental changes by using AI processes. In both cases, adaptation is achieved by implementing highly complex software which enables mobile hybrid AI processes.
While the field of AI has developed over decades to create specific techniques, a useful hybrid software implementation of AI systems has not been forthcoming. Specifically, a software system is needed which can combine various AI processes in real time to solve complex problems which require adaptation to changing and uncertain environments. Such a system would identify and solve complex problems on the fly. The main vehicle for such a software implementation would be a mobile hybrid software router, which identifies the problems, combines the AI processes and provides solutions in context.
A mobile hybrid software router (MHSR) is implemented in intelligent mobile software agents (IMSAs). IMSAs operate in a multi-agent system (MAS) which is either cooperative, competitive or hybrid. In a cooperative MAS, IMSAs work together to complete a task, while in a competitive MAS, IMSAs negotiate in a game-theoretic competition until a winning strategy is determined, and in a hybrid MAS, a combination of processes occur, including competing coalitions, for varied outcomes. In dynamic environments the MHSR is a critical component to IMSA operation.
MHSRs, implemented in IMSAs, can also be implemented in hardware so as to enable specific computer, electrical and mechanical functions. In one embodiment, MHSRs activate perpetually reprogrammable evolvable hardware (EHW). The application of MHSRs to field programmable gate array (FPGA) integrated circuits will accelerate the reconfigurability process as well as the process of hardware usability for adaptive problem solving processes in dynamic environments. Examples of applications of MHSRs to EHW include collective robotics systems and advanced adaptive computer networks. The application of MHSRs is useful in the self-organization of collectives of hardware and software entities in highly complex systems. In addition, with the use of this system, emergent (commercial) behaviors can be anticipated and optimized to create dynamic hubs for maximum network efficiency.
The present invention provides methods and apparatus for a system with implementation in computer software and hardware. The system provides a toolkit for the implementation of hybrid computational or mathematical techniques in which an IMSA is evolvable and auto-programming in order to solve problems in real time in dynamic environments. In order to perform these functions, an IMSA, or groups of IMSAs, identify problems in the environment, develop various possible solutions using unique combinations of various hybrid techniques, select an optimal solution and perform a specific function or combination of functions in order to accomplish a task or tasks. Since the environment is dynamic, changing and unpredictable, the system must learn to anticipate and adapt in real time. This anticipatory behavior is illustrative of emergent and self-organizational systems.
Implementation of the MHSR will facilitate the emergence and interaction of “thinking” machines. Because it is mobile (as implemented in IMSAs), the MHSR is fundamental to the development of a complex operating system with applications to systems involving collective behaviors.
While there is significant theoretical research in computer science, mathematics, psychology, logic and philosophy involving artificial intelligence, complex systems for self-organization, adaptive computer programs and evolvable hardware, there is a dearth of intellectual property on adaptive software with applications to multi-agent systems or evolvable hardware.
Two computer science fields in which there is some work on AI are collective robotics and dynamic computer networks, though these fields are nascent. Neither of these fields has developed a MHSR for use in adaptive and reconfigurable systems, though such a model would be highly useful.
In the field of artificial intelligence, John Holland has developed some of the original ideas involving genetic algorithms. His student, John Koza, has developed the original ideas involving genetic programming. These computer programming techniques borrow ideas from genetics and the theory of biological evolution in order to construct evolutionary computation (EC) processes. By using analogies of biological processes, these theorists seek to provide methods by which computers adapt to their environment and thus construct self-organizing systems. Both of these theorists, as well as theorists from the Santa Fe Institute, have been involved in developing complexity theory, which develops approaches of self-organizing, emergent and adaptive artificial systems that emulate biological systems. None of these theorists have alluded to the development of a MHSR to be implemented in software and applied to computer networks, collective behaviors and complex systems.
In other research streams, the development of complex probabilistic techniques and methods, particularly involving Bayesian theory and Monte Carlo theory, have been useful in providing approaches to learning and simulations. In addition, the emergence of support vector machines (SVM) and other kernel-based machine learning processes apply to learning and optimization problems. Moreover, the research stream involving artificial neural networks (A-NN) has developed approaches that are useful in application to learning processes that are adaptive to dynamic environments. However, no one has combined the EC, SVM, A-NN and probabilistic approaches for use in a single adaptable hybrid model for implementation in mobile software for application to problem solving in complex systems.
Finally, literature involving evolvable hardware (EHW) focuses on field programmable gate arrays (FPGAs) for the development of reconfigurable prototype hardware. While there is a literature involving EHW which focuses on hardware aspects, there is very little literature involving the complex software processes that analyze and configure the hardware implementation.
Consequently, the present invention provides a novel model for the development of a MHSR with various applications.
There are various challenges to the development of a MHSR. First, how does the model select the correct EC, machine learning, probabilistic and A-NN techniques for each circumstance? Second, how does the model synthesize various computational or mathematical techniques to solve various problems? Third, how does the model solve problems in real time that require different solutions? Next, how does the model develop customized, that is, hybrid solutions comprised of combinations of techniques to varied problems? Moreover, how does the model use the appropriate computational solution in a distributed and mobile environment?
How does the system use complex sequences of hybrid techniques for application to complex systems? How does the system coordinate multiple application-specific MHSRs to solve problems? How does the system coordinate multiple multi-functional MHSRs to solve problems? How does the MHSR access multiple distributed databases to select or discard program code in an optimal model? How can the system be implemented in hardware, as well as software, for use in solving complex engineering problems. Finally, how can we develop a problem-driven automated programming model for adaptation to dynamic environments? The present invention sets out to answer these questions by providing novel solutions.